<?php
// PHP files to set up common environment
// ALL THE FILES SHOULD BE ENCODED WITH UTF-8 CHARSET

// PHP의 error 보고 수준 정의
// E_NOTICE type을 제외한 모든 error 보고
error_reporting(E_ALL ^ E_NOTICE);

// 환경변수 변환
// Reference site:
// http://www.php.net/manual/kr/language.variables.superglobals.php
// 하위버전 호환을 위해 deprecated된 환경변수를 재설정
if(isset($HTTP_SERVER_VARS) && !isset($_SERVER)) $_SERVER = &$HTTP_SERVER_VARS;
if(isset($HTTP_GET_VARS) && !isset($_GET)) $_GET = &$HTTP_GET_VARS;
if(isset($HTTP_POST_VARS) && !isset($_POST)) $_POST = &$HTTP_POST_VARS;
if(isset($HTTP_POST_FILES) && !isset($_FILES)) $_FILES = &$HTTP_POST_FILES;
if(isset($HTTP_COOKIE_VARS) && !isset($_COOKIE)) $_COOKIE = &$HTTP_COOKIE_VARS;
if(isset($HTTP_SESSION_VARS) && !isset($_SESSION)) $_SESSION = &$HTTP_SESSION_VARS;
if(isset($HTTP_ENV_VARS) && !isset($_ENV)) $_ENV = &$HTTP_ENV_VARS;

// magic_quotes_gpc 값이 false인 경우 addslashes() 적용
// magic_quotes_gpc 함수는 deprecate 되었으므로 늘 적용되어야 함
// Injection으로 부터 보호

function process_add_slashes(&$var_array) {
    if(is_array($var_array)) {
        while(list($k, $v) = each($var_array)) {
            if(is_array($var_array[$k])) {
                while(list($k2, $v2) = each($var_array[$k])) {
                    $var_array[$k][$k2] = addslashes($v2);
                }
                @reset($var_array[$k]);
            } else {
                $var_array[$k] = addslashes($v);
            }
        }
        @reset($var_array);
    }
}

if(!get_magic_quotes_gpc()) {
    process_add_slashes($_GET);
    process_add_slashes($_POST);
    process_add_slashes($_COOKIE);
}

// board main page 공통사항
$aboard['path'] = '.'; // common.php 상대경로

include_once("$aboard[path]/config.php");

?>
